home *** CD-ROM | disk | FTP | other *** search
/ Experimental BBS Explossion 3 / Experimental BBS Explossion III.iso / c / rxdoscmd.zip / RXDOSCIN.ASM < prev    next >
Assembly Source File  |  1993-06-06  |  6KB  |  150 lines

  1.  
  2.  
  3.  
  4.  
  5.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  6.         ;  RxDOS Command Shell Data Structures and Definitions          ;
  7.         ;...............................................................;
  8.  
  9.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  10.         ;  Real Time Dos Data Structure Definitions                     ;
  11.         ;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
  12.         ;                                                               ;
  13.         ;  Data Structure Definitions                                   ;
  14.         ;                                                               ;
  15.         ;                                                               ;
  16.         ;  (c) Copyright 1990, 1992. Api Software and Mike Podanoffsky  ;
  17.         ;      All Rights Reserved Worldwide.                           ;
  18.         ;                                                               ;
  19.         ;  This product is protected under copyright laws and  may not  ;
  20.         ;  be reproduced  in whole  or in part, in any form  or media,  ;
  21.         ;  included but not limited to source listing, facimilie, data  ;
  22.         ;  transmission, cd-rom, or  floppy disk without the expressed  ;
  23.         ;  written consent of the author.                               ;
  24.         ;                                                               ;
  25.         ;  Licence for distribution in commercial use:                  ;
  26.         ;                                                               ;
  27.         ;  Api Software                                                 ;
  28.         ;  12 South Walker Street                                       ;
  29.         ;  Lowell,  MA   01851                                          ;
  30.         ;  508/ 454-4961.                                               ;
  31.         ;                                                               ;
  32.         ;...............................................................;
  33.  
  34.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  35.         ;  Switches                                                     ;
  36.         ;...............................................................;
  37.  
  38.         SWITCHENTRY struc
  39.  
  40. swChar                          db ?
  41. swFlags                         dw ?
  42. swMinValue                      dw ?
  43. swMaxValue                      dw ?
  44. swActualValue                   dw ?
  45.  
  46.         SWITCHENTRY ends
  47.  
  48. SW_MINMAXVALUE                  equ 0001h
  49. SW_LETTERCHOICE                 equ 0002h
  50.  
  51. SW_SWITCHSET                    equ 8000h
  52. sizeSWITCHENTRY                 equ size SWITCHENTRY
  53.  
  54.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  55.         ;  Sprintf flags                                                ;
  56.         ;...............................................................;
  57.  
  58. SPRINTF_COMMADELIM              equ 8000h
  59. SPRINTF_LONGFLAG                equ 4000h
  60. SPRINTF_LEFTALIGN               equ 2000h
  61.  
  62.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  63.         ;  Internal Int21 Emulation call                                ;
  64.         ;...............................................................;
  65.  
  66. Int21   macro arg1, arg2
  67.  
  68.     ifnb < arg2 >
  69.       if ( arg1 GT 00ffh )
  70.         mov ax, arg1 + arg2
  71.         else
  72.         mov ax, ( arg1 * 256 + arg2 )
  73.         endif
  74.         endif
  75.  
  76.     ifb < arg2 >
  77.       if ( arg1 GT 00ffh )
  78.         mov ax, arg1
  79.         else
  80.         mov ah, arg1
  81.         endif
  82.         endif
  83.  
  84.         int 21h                                         ;** real DOS
  85.         endm
  86.  
  87.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  88.         ;  Internal Int2E Emulation call                                ;
  89.         ;...............................................................;
  90.  
  91. Int2E   macro
  92.  
  93.         pushf
  94.         call _CommandParser
  95.         endm
  96.  
  97.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  98.         ;  Replace Macro                                                ;
  99.         ;...............................................................;
  100.  
  101. Translate macro c1, c2, goto
  102.  
  103.         mov ah, c2
  104.         cmp al, c1
  105.         jz goto 
  106.         endm
  107.  
  108.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  109.         ;  Define Date/Time Template                                    ;
  110.         ;...............................................................;
  111.  
  112. intldate macro country, template
  113.  
  114.         dw country
  115.         db template
  116.         endm
  117.  
  118.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  119.         ;  For Argument List                                            ;
  120.         ;...............................................................;
  121.  
  122.         FORARGS struc
  123.  
  124. forVarIdent                     dw ?
  125. forVarLetter                    dw ?
  126. forInArg                        dw ?
  127. forInStartParen                 dw ?
  128.  
  129.         FORARGS ends
  130.  
  131. _IN                             equ 0
  132. _DO                             equ 1
  133.  
  134.  
  135.         ;''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';
  136.         ;  Expanded Filename                                            ;
  137.         ;...............................................................;
  138.  
  139.         EXPANDEDNAME struc
  140.  
  141. expDrive                        db   2 dup(?)
  142. expPath                         db 129 dup(?)
  143. expFilename                     db   9 dup(?)
  144. expExtension                    db   5 dup(?)
  145.  
  146.         EXPANDEDNAME ends
  147.  
  148. sizeExpandedName                equ size EXPANDEDNAME
  149.  
  150.